// 服务器中间件在所有路由接口之前运行，不应响应任何内容，只能引发错误
import jwt from 'jsonwebtoken'
// 用户鉴权
export default defineEventHandler(event => {
  let token = getHeader(event, 'Authorization')
  if (token) {
    token = token.replace('Bearer ', '')
    const { jwtSecret } = useRuntimeConfig(event)
    // 验证token
    try {
      // decoded:解码
      const decoded = jwt.verify(token, jwtSecret, { maxAge: '1 days' })
      // 添加解码后的信息到上下文中，方便调用
      event.context.userinfo = decoded
    } catch (error) {
      console.log('jwt解码错误' + error)
    }
  }
})
